package pe.adra.core.ext;

import java.util.Date;

import pe.adra.core.dao.ADRAEntidad;
import pe.adra.core.ext.soporte.SuportEntidad;

public abstract class DAOBaseImpl<T extends ADRAEntidad> {

	protected abstract void procesarConsulta(T filtro, StringBuffer strbfSqlQuery, SuportEntidad... innerjoin);

	protected abstract void procesarConsulta(T filtro, Date finit, Date ffin, StringBuffer strbfSqlQuery, SuportEntidad... innerjoin);

	protected abstract void procesarConsulta(T objEntidad, Integer[] ids, StringBuffer strbfSqlQuery, SuportEntidad... innerjoin);

	protected abstract void setValues(T objEntidad, Integer[] ids, StringBuffer strbfSqlQuery, SuportEntidad... innerjoin);

	protected abstract void setValues(T filtro, Date finit, Date ffin, StringBuffer strbfSqlQuery, SuportEntidad... innerjoin);

	protected abstract void setFiltroEntidad(T filtro, Date finit, Date ffin, SuportEntidad... innerjoin);

	protected abstract void setFiltroEntidad(T objEntidad, Integer[] ids, SuportEntidad... innerjoin);

}
